/******************************************************************************
 * (C) Copyright 
 * FILE NAME:    drv_a2d.h
 * DESCRIPTION:
 * 
 * DATE BEGUN:   
 * BY:           
 * PRODUCT NAME:
 * APPLICATION:
 * TARGET H/W:
 * DOC REF:
 *****************************************************************************
 */

#ifndef _DRV_A2D_H_
#define _DRV_A2D_H_
#include "Type.h"
/*****************************************************************************
**  typedef
*****************************************************************************/
typedef enum
{
    AIN0    = 0x00,
    AIN1    = 0x01,
    AIN2    = 0x02,
    AIN3    = 0x03,
    AIN4    = 0x04,
    AIN5    = 0x05,
    AIN6    = 0x06,
    AIN7    = 0x07,
    AIN8    = 0x08,
    AIN9    = 0x09, 
    AIN10   = 0x0A,
    AIN11   = 0x0B,

} Drv_A2DChannel_E;

/*****************************************************************************
** Constant Macro Definition
*****************************************************************************/
#define INVALID_VALUE_8BIT   ((UINT8)0xFF)
#define INVALID_VALUE_10BIT  ((UINT16)0x400)
  
/*****************************************************************************
**#include 
*****************************************************************************/
#include "derivative.h"

/*****************************************************************************
** System Macro Definition
*****************************************************************************/


/*****************************************************************************
** Action Macro Definition
*****************************************************************************/


/*****************************************************************************
** Config Macro Definition
*****************************************************************************/


/*****************************************************************************
** Task Macro Definition
*****************************************************************************/


/*****************************************************************************
** Variables
*****************************************************************************/


/*****************************************************************************
** Constants
*****************************************************************************/


/*****************************************************************************
** Function prototypeseb
*****************************************************************************/
/****************************************************************************/
/**
 * Function Name: drv_a2d_v_init
 * Description: Init A2D
 *
 * Param:   none
 * Return:  none
 * Author:  
 ****************************************************************************/
void drv_a2d_v_init( void );

/****************************************************************************/
/**
 * Function Name: drv_a2d_v_disable
 * Description: Disable A2D
 *
 * Param:   none
 * Return:  none
 * Author:  
 ****************************************************************************/
void drv_a2d_v_disable( void );

/****************************************************************************/
/**
 * Function Name: drv_a2d_u8_readData8Bit
 * Description: Read ad port, time cost: 9.68us(@fATDCLK =4MHz)
 *
 * Param e_channel: AD channel
 * Return:  AD Conversion value, 8-bit
 * Author: 
 ****************************************************************************/
UINT8 drv_a2d_u8_readData8Bit( Drv_A2DChannel_E e_channel );

/****************************************************************************/
/**
 * Function Name: drv_a2d_u16_readData10Bit
 * Description: Read ad port, time cost: 9.75us(@fATDCLK =4MHz)
 *
 * Param e_channel: AD channel
 * Return:  AD Conversion value, 10-bit
 * Author:  
 ****************************************************************************/
UINT16 drv_a2d_u16_readData10Bit( Drv_A2DChannel_E e_channel );

/*****************************************************************************
** other
*****************************************************************************/


/****************************************************************************/

#endif	//_DRIVER_A2D_H_

/*****************************************************************************
** End File
*****************************************************************************/

